System and method for facilitating personalization of applications based on anticipation of users&#39; interests

ABSTRACT

Embodiments for facilitating personalization of applications based on anticipation of users&#39; interests are provided. In one preferred embodiment, a communication session is established with a user. Data related to user activities conducted by the user are collected during the communication session. Finally, collected data are processed according to one or more predetermined rules to obtain anticipated interests data used in personalization of applications for the user and the anticipated interests data are further stored in a user database.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.11/010,238, filed Dec. 9, 2004 now U.S. Pat. No. 7,797,338, which isincorporated herein in its entirety by this reference thereto.

TECHNICAL FIELD

The invention relates generally to the field of network-basedcommunications and, more particularly, to a system and method forfacilitating personalization of applications based on anticipation ofusers' interests over a network, such as the Internet.

BACKGROUND OF THE INVENTION

The explosive growth of the Internet as a publication and interactivecommunication platform has created an electronic environment that ischanging the way business is transacted and the way entertainment isperceived. As the Internet becomes increasingly accessible around theworld, communications among users increase exponentially and efficientnavigation of the information becomes essential.

Several attempts have been made to facilitate such efficient navigationof the Internet, namely to provide some degree of customization for easyinteraction and navigation. Existing web portals enable such customizedapplications, but only appear to customize such applications based onthe purchasing history of users (e.g., Amazon.com) or when users takespecific and elaborate step-by-step actions to personalize theirexperience (e.g., my.yahoo.com). However, there is a need for anelaborate and sophisticated system and method to facilitate systematicpersonalization of applications without significant user input.

SUMMARY OF THE INVENTION

A system and method for facilitating personalization of applicationsbased on anticipation of users' interests are described. In onepreferred embodiment, a communication session is established with auser. Data related to user activities conducted by the user is collectedduring the communication session. Finally, collected data is processedaccording to one or more predetermined rules to obtain anticipatedinterests data used in personalization of applications for the user andthe anticipated interests data is further stored in a user database.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating an exemplary network-basedtransaction and communications facility, which includes apersonalization server entity for facilitating personalization ofapplications based on anticipation of users' interests, according to oneembodiment of the invention;

FIG. 2 is a block diagram illustrating a personalization server entitywithin the network-based server facility according to one embodiment ofthe invention;

FIG. 3 is a block diagram illustrating a database, maintained by andaccessed via a personalization platform within the personalizationserver entity, which at least partially implements and supports thepersonalization server entity according to one embodiment of theinvention;

FIG. 4 is an interaction diagram illustrating a sequence of interactionsfor facilitating personalization of applications based on anticipationof users' interests, according to one embodiment of the invention;

FIG. 5 is a flow diagram illustrating a method for collecting activitydata in preparation for personalization of applications based onanticipation of users' interests, according to one embodiment of theinvention;

FIG. 6 is a flow diagram illustrating a method for facilitatingpersonalization of applications based on users' interests, according too ne embodiment of the invention; and

FIG. 7 is a flow diagram illustrating a method for processing activitydata, according to one embodiment of the invention;

FIG. 8 is a diagrammatic representation of a machine in the exemplaryform of a computer system within which a set of instructions may beexecuted; and

FIGS. 9A and 9B illustrate exemplary human user interfaces to defineprogram rules to be stored within the personalization server entity.

DETAILED DESCRIPTION

FIG. 1 is a block diagram illustrating an exemplary network-basedtransaction and communications facility 10, which facilitatespersonalization of applications based on anticipation of users'interests. While an exemplary embodiment of the invention is describedwithin the context of a network transaction and communications facility,it will be appreciated by those skilled in the art that the inventionwill find application in many different types of computer-based, andnetwork-based, facilities.

The facility 10 includes one or more of a number of types of front-endweb servers 12, such as, for example, web page servers 14, which deliverweb pages to multiple users, picture servers 16, which deliver images tobe displayed within the web pages, and content servers 18 (for example,multimedia content servers), which dynamically deliver contentinformation (audio and video data) to the users. In addition, thefacility 10 may include communication servers 22 that provide, interalia, automated real-time communications, such as, for example, instantmessaging (IM) functionality, to/from users of the facility 10, andautomated electronic mail (email) communications to/from users.

The facility 10 further includes one or more back-end servers, such as apersonalization server entity 24 for facilitating personalization ofapplications based on anticipation of users' interests, as described infurther detail below, and other known back-end servers configured toenable functionality of the facility 10. The network-based facility 10may be accessed by a client program 30, such as a browser, e.g. theInternet Explorer browser distributed by Microsoft Corporation ofRedmond, Wash., that executes on a client machine 32 and accesses thefacility 10 via a network 34, such as, for example, the Internet. Otherexamples of networks that a client may utilize to access the facility 10includes a wide area network (WAN), a local area network (LAN), awireless network, e.g. a cellular network, the Plain Old TelephoneService (POTS) network, or other known networks.

FIG. 2 is a block diagram illustrating a personalization server entitywithin the network-based server facility according to one embodiment ofthe invention. As illustrated in FIG. 2, in one embodiment, thepersonalization server entity 24 includes a personalization managementserver 41 for enabling activity data collection and for enabling inputof program rules and statements, as described in further detail below.The personalization management server 41 is coupled to a rules andstatements database 48, which may, in one embodiment, be implemented asa relational database, and which contains the program rules andstatements input by program editors through the personalizationmanagement server 41. In an alternative embodiment, the database 48 maybe implemented as a collection of objects in an object-orienteddatabase.

In one embodiment, the personalization server entity 24 further includesan anticipation activity processor 44 and an anticipation rule engine 46coupled to the anticipation activity processor 44 and further coupled toa content metadata database 47. The anticipation activity processor 44is a hardware and/or software module for collecting activity datarelated to each user. The anticipation rule engine 46 is a hardwareand/or software module for receiving the collected activity data and forprocessing the data using program rules and statements stored in therules and statements database 48. The content metadata database 47 may,in one embodiment, be implemented as a relational database, or may, inan alternate embodiment, be implemented as a collection of objects in anobject-oriented database. The content metadata database 47 storesmetadata associated with content sources accessed by the user, such as,for example, content feeds that generate web addresses accessed by theuser, the metadata being used in identification of the correspondingaddresses.

Finally, the personalization server entity 24 includes a preferenceplatform 42 coupled to a user database 43 and further coupled to each ofthe previously described modules, the personalization management server41, the anticipation activity processor 44, and the anticipation ruleengine 46. The preference platform 42 is a software and/or hardwaremodule for enabling creation of personalized applications based onusers' interests, as described in further detail below.

FIG. 3 is a block diagram illustrating a database, maintained by andaccessed via the personalization platform 42 within the personalizationentity 24, which at least partially implements and supports thepersonalization entity 24 according to one embodiment of the invention.As illustrated in FIG. 3, the user database 43 may, in one embodiment,be implemented as a relational database, and includes a number of tableshaving entries, or records, that are linked by indices and keys. In analternative embodiment, the database 43 may be implemented as acollection of objects in an object-oriented database.

Central to the database 43 shown in FIG. 3 is a user table 50, whichcontains records for each entity or user of the facility 10. Thedatabase 23 also includes an accounts table 52, which may be linked tothe user table 50 and may be populated with account information relatedto each user of the network-based facility 10.

The database 43 may include a number of other tables, which may also belinked to the user table 50, for example, tables specifically providedto enable an exemplary embodiment of the present invention. One or moreuser preferences tables 54 are configured to store preferences and/orselections explicitly specified by the user, part of a user profileconstructed and stored for each user, such as, for example, contentpreferences, web site and/or web page preferences, and other preferencesthat may be stored by users of the facility 10. In one embodiment, eachuser has continuous access to the user profile and may modify at anytimethe user preferences stored in the user preferences tables 54.

One or more anticipated interests data tables 56 are configured to storeanother portion of each user profile, which includes processed activitydata, such as, for example, data collected from activities performed byeach user and further processed to include anticipated interests of theusers and to enable personalization of applications subsequentlypresented to the specific user.

In one embodiment, each instance of stored activity data includes aswitch, which is set by a program rule provided by program editors viathe personalization management server 41, and which can be turned stateON or OFF to indicate anticipated interest by the user in a particulararea or content source. Each program rule contains one or moreparameters that set the state for a particular switch. In oneembodiment, rules may include a list of targets indicating traffic in aparticular interest area, a predetermined time period to turn the switchon or off, a frequency count within the time period to turn the switchon or off, and a repetition of the predetermined time period, asdescribed in further detail below.

FIG. 4 is an interaction diagram illustrating a sequence of interactions100 for facilitating personalization of applications based onanticipation of users' interests, according to one embodiment of theinvention. As illustrated in FIG. 4, in one embodiment, the sequence 100commences at block 105 with a request from the client machine 32 toaccess the facility 10 and to initiate a communication session with theuser. The facility 10 receives the request via communication servers 22and forwards the request to the personalization management server 41.

In one embodiment, if an authorization to collect data is needed fromthe user, at block 110, the personalization management server 41transmits a personalization form to the user via one or more of thefront-end servers 14-22. The personalization management server 41displays the personalization form in a message window of a userinterface area within the client machine 32 and requests authorizationto collect activity data. Alternatively, if no authorization is needed,data is collected and processed automatically while the user is insession, and the user may be allowed to access the facility 10 andopt-out of data collection at anytime.

At block 115, if the user authorizes collection of activity data, forexample via a conventional mouse click command in the message window ofthe user interface area, the client machine 32 transmits theauthorization to collect activity data to the personalization managementserver 41 via the communication servers 22.

At block 120, the session is established and the personalizationmanagement server 41 communicates with the anticipation activityprocessor 44 within the personalization entity 24 and prompts theprocessor 44 to start collection of activity data.

At block 125, in one embodiment, the anticipation activity processor 44continuously collects raw data of user activities, such as, for example,types of activities conducted by the user, the dates and times of suchactivities, content sources accessed by the user, clickstream eventsrepresenting web pages visited by the user, transactions performed bythe user, and other information related to activities performed by theuser during the session. If a user accesses a content source via theclient machine 32 and the network 34, such as, for example, a newspaperweb page, then accesses a calendar of activities, and, subsequently,accesses an electronic mail account, the anticipation activity processor44 collects such activity data and the date and time of access forfurther processing and storage. The processed activity data will then beused to develop the user's profile stored in the user database 43. Inone embodiment, the anticipation activity processor 44 filters outpredetermined user activities that cannot be stored during the accesssession for policy and other reasons or requirements, such as, forexample, predetermined URLs, directories, domain or subdomain addresses.

At block 130, in one embodiment, the anticipation activity processor 44communicates with the anticipation rule engine 46 within thepersonalization entity 24 and continuously transmits the collectedactivity data to the anticipation rule engine 46 for further processing.

At block 135, the anticipation rule engine 46 retrieves predeterminedprogram rules and statements stored in the rules and statements database48 and further retrieves metadata associated with the specific programrules from the content metadata database 47.

In one embodiment, the program rules are used to set the switches withinthe user database 43. As described above, each program rule includes oneor more parameters, such as, for example, the list of target parametersindicating traffic in a particular interest area, the predetermined timeperiod parameter to turn the switch on or off, the frequency countparameter within the time period to turn the switch on or off, and therepetition parameter indicating a repetition of the predetermined timeperiod.

FIGS. 9A and 9B illustrate exemplary human interfaces to define programrules to be stored within the personalization server entity. Asillustrated in FIG. 9A, the personalization management server 41presents a human interface 900 to program editors and enables theprogram editors to define the parameters of each program rule.

The human interface 900 includes a location window 901 and a parameterwindow 902 and facilitates creation and editing of each program rule.The location window 901 enables a program editor to enter one or moretarget locations to be monitored by the corresponding program rule.

Target parameters monitored by the particular rule include addresses,such as, for example, URL patterns, click tracking, such as, forexample, clicks on a particular link or form submitted by the user,short-term addresses, such as, for example, addresses generated by thecontent feeds, and user preferences that can be used to trigger aprogram rule. To account for the feed-based addresses, the program rulemonitors activity data on article-level content by associating metadatareceived from the content feeds with the corresponding dynamic URLs inorder to derive the meaning of the particular URLs.

In one embodiment, the parameter window 902 enables the program editorto set a frequency count parameter in one or more frequency fields 903,a time period parameter in one or more time period fields 904, such as,for example, drop-down menus illustrating the range in which thefrequency count parameter works, and a repetition parameter in one ormore repetition fields 905, such as, for example, drop-down menusillustrating various repetition intervals.

Once a target parameter is defined, the frequency count parameter on thetarget must be set. The frequency count parameter can be set as low as asingle instance within a predetermined period of time, or as frequentlyas it is deemed necessary by the program editors. The frequency countparameter must be accompanied by the time period parameter and therepetition parameter. The time period parameter defines the range inwhich the frequency count works, for example, daily, weekly, or monthly.The repetition parameter defines how often a rule can repeat within aset cycle, for example within a 30-day cycle, and can be setindividually for both switch settings of a program rule.

As illustrated in FIG. 9B, in an alternate embodiment, thepersonalization management server 41 presents a human interface 920 tothe program editors. The user interface 920 includes a user-specifiedpreference window 921 and facilitates input of preference informationwithin a preference field 922.

At block 140, in one embodiment, the anticipation rule engine 46processes the collected activity data according to program rules andstatements stored in the rule and statements database 48. Theanticipation rule engine 46 analyzes the activity data based on theretrieved program rules and sets the associated switches accordingly. Inone embodiment, if the target parameter within the rule is configured tomonitor content within a number of pages of a content source, or anyfeed-based article tagged as containing that content, and if the useraccesses the content source repeatedly, the anticipation rule engine 46sets the switch indicating interest for the particular content to ON.

Finally, at block 145, the processed activity data is then transmittedto the user database 43 and stored within the anticipated interests datatables 56 of the database 43. In one embodiment, the anticipation ruleengine 46 transmits the activity data and the associated switches to theuser database 43 for storage and subsequent use by the preferenceplatform 42.

FIG. 5 is a flow diagram illustrating a method for collecting activitydata in preparation for personalization of applications based onanticipation of users' interests, according to one embodiment of theinvention. As illustrated in FIG. 5, at processing block 501, a requestto access the facility and to initiate a session is received from a uservia a client machine.

At processing block 502, a decision is made whether an authorization tocollect activity data is needed from the user. If the user needs toauthorize the data collection, at processing block 503, apersonalization form requesting authorization to collect data istransmitted to the user. Otherwise, if no authorization is needed, theprocedure jumps to processing block 507.

Next, at processing block 504, a decision is made if the authorizationhas been transmitted. If no authorization is transmitted, at processingblock 505, user access is enabled, a communication session is initiated,and the procedure stops. Otherwise, if the user accesses thepersonalization form and authorizes collection of activity data, atprocessing block 506, the authorization is received from the user.

At processing block 507, activity data performed by the user iscollected during the session. At processing block 508, the activity datais processed based on predetermined program rules and statements.Finally, at processing block 509, the processed activity data is storedin corresponding tables within the user database 43.

FIG. 6 is a flow diagram illustrating a method for facilitatingpersonalization of applications based on users' interests, according toone embodiment of the invention. As illustrated in FIG. 6, at processingblock 601, a request for anticipated user interests and foruser-specified preferences is received. In one embodiment, thepreference platform 42 receives a request from one or more of thefront-end web servers 12 to provide user interests, includinganticipated user interests stored within the data tables 56 and/oruser-specified preferences stored within the user preferences tables 54of the user database 43.

At processing block 602, a decision is made whether anticipatedinterests data is available for the particular user within the database43. In one embodiment, the preference platform 42 searches the usertable 50 and the account tables 52 for user account and profileinformation and further searches the user preferences tables 54 and theanticipated interests data tables 56 to determine whether thecorresponding tables 54, 56 contain any information related to thespecific user, such as, for example, preferences explicitly specifiedand stored by the user and/or switches generated and stored by theanticipation rule engine 46.

If anticipated interests data associated with the user is available, atprocessing block 603, the processed anticipation data is retrieved fromthe user database 43. In one embodiment, the preference platform 42retrieves the areas of anticipated interest associated with the ONswitches stored within the database 43. Otherwise, if anticipatedinterests data is not available, at processing block 606, a request toprovide anticipated interests data is transmitted to the anticipationrule engine 46. In one embodiment, the preference platform 42communicates with the anticipation rule engine 46 and requests real-timeactivity data continuously fed to the anticipation rule engine 46 viathe anticipation activity processor 44. At processing block 607, theanticipation rule engine 46 processes any available activity data andtransmits the processed results data to the preference platform 42. Theprocedure then jumps to processing block 604.

At processing block 604, preferences explicitly specified by the userare further retrieved from the user database 43. In one embodiment, thepreference platform 42 retrieves any user preferences stored within theuser preferences tables 54.

Finally, at processing block 605, the preference platform 42communicates with the front-end web servers 12 and transmits theretrieved anticipated interests data and user-specified preferences forfurther predication of a set of personalized services to be displayedfor the user in a user interface area within the client program 30. Inone embodiment, the web servers 12 use the information transmitted bythe preference platform 42, such as for example, information related tocontent sources accessed by the user, various applications accessed bythe user, clickstream events, and other user-related activities, tocreate a personalized user interface area containing one or more contentwindows, each window including access to an entity preferred by theuser.

In an alternate embodiment, the user profile may be used to presentinformation automatically to the user at the time the user connects tothe network 34. The user performs one or more tasks, such as, forexample, accessing a web page to read an online newspaper, accessing acalendaring application to check the calendar, and accessing anelectronic mail account to read email messages.

The personalization server entity 24 presents the user with an automateddisplay for accessing the respective content sources identified asroutine in the user profile. In one embodiment, the user automaticallyadvances through the routine tasks outlined above. For example, the usermay be automatically presented with the web page of the onlinenewspaper. After a predetermined amount of time has passed, thecalendaring application may be launched, followed by the electronic mailaccount. Depending on the complexity of the user's calendar, the emailaccount may be displayed after the user has had a chance to review theitems on the calendar. For example, if the calendar includes no entries,then the email account may be displayed shortly after the launch of thecalendaring application. If the calendar contains multiple entries, theemail account may be displayed after a predetermined period of time,calculated to enable the user to review all the entries.

In one embodiment, the order of the presentation is flexible and may bechanged based on event importance. For example, when an email messagehas been received with high importance, the electronic mail account maybe displayed prior to the accessing of the web page of the onlinenewspaper. In another embodiment, the user is enabled to configure thepresentation of tasks identified as routine, by accessing the facility10 and specifying user preferences to be stored in the user preferencestables 54. For example, the user may specify the time spent performingan activity before the next task is presented.

FIG. 7 is a flow diagram illustrating a method for processing activitydata, according to one embodiment of the invention. As illustrated inFIG. 7, at processing block 701, activity data collected by theanticipation activity processor 44 during the communication session iscontinuously received.

At processing block 702, predetermined rules and statements areretrieved from the rules and statements database 48. At processing block703, metadata associated with the rules is retrieved from the contentmetadata database 47.

At processing block 704, the received activity data is processedaccording to the retrieved program rules. Finally, at processing block705, the processed results data is stored in the user database 43.

FIG. 8 shows a diagrammatic representation of a machine in the exemplaryform of a computer system 800 within which a set of instructions, forcausing the machine to perform any one of the methodologies discussedabove, may be executed. In alternative embodiments, the machine maycomprise a network router, a network switch, a network bridge, PersonalDigital Assistant (PDA), a cellular telephone, a web appliance or anymachine capable of executing a sequence of instructions that specifyactions to be taken by that machine.

The computer system 800 includes a processor 802, a main memory 804 anda static memory 806, which communicate with each other via a bus 808.The computer system 800 may further include a video display unit 810,e.g. a liquid crystal display (LCD) or a cathode ray tube (CRT). Thecomputer system 800 also includes an alphanumeric input device 812, e.g,a keyboard, a cursor control device 814, e.g. a mouse, a disk drive unit816, a signal generation device 818, e.g. a speaker, and a networkinterface device 820.

The disk drive unit 816 includes a machine-readable medium 824 on whichis stored a set of instructions, i.e. software, 826 embodying any one,or all, of the methodologies described above. The software 826 is alsoshown to reside, completely or at least partially, within the mainmemory 804 and/or within the processor 802. The software 826 may furtherbe transmitted or received via the network interface device 820.

It is to be understood that embodiments of this invention may be used asor to support software programs executed upon some form of processingcore (such as the CPU of a computer) or otherwise implemented orrealized upon or within a machine or computer readable medium. A machinereadable medium includes any mechanism for storing or transmittinginformation in a form readable by a machine, e.g. a computer. Forexample, a machine readable medium includes read-only memory (ROM);random access memory (RAM); magnetic disk storage media; optical storagemedia; flash memory devices; electrical, optical, acoustical or otherform of propagated signals, e.g. carrier waves, infrared signals,digital signals, etc.; or any other type of media suitable for storingor transmitting information.

In the foregoing specification, the invention has been described withreference to specific exemplary embodiments thereof. It will, however,be evident that various modifications and changes may be made theretowithout departing from the broader spirit and scope of the invention asset forth in the appended claims. The specification and drawings are,accordingly, to be regarded in an illustrative sense rather than arestrictive sense.

1. A computer-implemented method comprising steps of: establishing, by asession processor, a communication session with a user; collecting data,by an activities processor, related to user activities conducted by theuser during the communication session; and processing, by a dataprocessor, the data according to at least one predetermined rule toobtain anticipated interests data used in personalization ofapplications for the user; wherein the user activities comprise using acalendar application and using an e-mail account and wherein when thecalendar application includes no entries, then the e-mail account isdisplayed shortly after launching the calendar application and when thecalendar application contains multiple entries, then the e-mail accountis displayed after a predetermined period of time, calculated to enablethe user to review all of the multiple entries.
 2. The method accordingto claim 1, further comprising steps of: storing the anticipatedinterests data in a user database.
 3. The method according to claim 1,wherein the establishing step further comprises steps of: receiving, bya receiving processor, a request to initiate the communication sessionfrom the user; when authorization to collect the data is required,transmitting, by a transmitting processor, a personalization form to theuser in a message window of an interface area, the personalization formenabling the user to authorize collection of the data; and receiving theauthorization to collect the data from the user through the messagewindow of the interface area.
 4. The method according to claim 1,wherein the collecting step further comprises steps of: analyzing, by ananalyzing processor, the collected data; and filtering out, by afiltering processor, predetermined user activities performed by the userduring the communication session based on predetermined policyrequirements.
 5. The method according to claim 1, wherein the collecteddata further comprise any of types of the user activities, dates andtimes of the user activities, content sources accessed by the userduring the communication session, clickstream events representing webpages visited by the user during the communication session, andtransactions performed by the user during the communication session. 6.The method according to claim 1, wherein the processing step furthercomprises steps of: retrieving, by a receiving processor, the at leastone predetermined rule from a rules database; retrieving, by aretrieving processor, metadata associated with the at least onepredetermined rule from a content metadata database; and applying, by anapplying processor, the at least one predetermined rule to the collecteddata.
 7. The method according to claim 6, wherein the at least onepredetermined rule further comprises at least one parameter used to seta state of at least one switch within a user database, each switch beingassociated with an instance of the anticipated interests data andindicating an anticipated interest by the user in a particular interestarea or content source.
 8. The method according to claim 7, wherein theat least one parameter further comprises any of a target parameterindicating traffic in the particular interest area, a predetermined timeperiod parameter for setting the state of the at least one switch, afrequency count parameter within the predetermined time period, and arepetition parameter indicating a repetition of the predetermined timeperiod.
 9. The method according to claim 8, wherein the applying stepfurther comprises steps of: analyzing, by an analyzing processor, thedata according to the at least one parameter of the at least onepredetermined rule; and setting, by a state setting processor, the stateof the at least one switch within the user database to reflect theanticipated interest of the user.
 10. The method according to claim 1,further comprising steps of: receiving, by a receiving processor, arequest for the anticipated interests data and user-specifiedpreferences associated with the user and stored in a user database; whenthe anticipated interests data are available in the user database,retrieving the anticipated interests data; when the user-specifiedpreferences are available in the user database, retrieving theuser-specified preferences; and transmitting, by a transmittingprocessor, the retrieved anticipated interests data and the retrieveduser-specified preferences for further predication of a set ofpersonalized services to be displayed for the user.
 11. The methodaccording to claim 10, wherein the anticipated interests data and theuser-specified preferences are used to create a personalized userinterface area containing at least one content window, each windowincluding access to an entity preferred by the user.
 12. The methodaccording to claim 1, further comprising steps of: receiving, by areceiving processor, a request for the anticipated interests data anduser-specified preferences associated with the user and stored in a userdatabase; when the anticipated interests data are not available in theuser database, receiving the anticipated interests data collected andprocessed in real-time; and transmitting, by a transmitting processor,the retrieved anticipated interests data and the user-specifiedpreferences for further predication of a set of personalized services tobe displayed for the user.